1. Field of the Invention
The present invention relates to a motion controller capable of specifying a program execution pace.
2. Description of the Related Art
If an apparatus operating in cooperation with a peripheral device is controlled by a motion controller that sequentially executes a preregistered program including a plurality of blocks, the peripheral device may invade the movable range of the apparatus and the apparatus and the peripheral device may interfere with each other when the program fails to end in a given time. Thus, in the conventional art, the execution time of the entire program is preliminarily determined and the ratio between the execution time and a desired time is set to be an override value so that the program execution time is adjusted by varying the moving speeds of axes.
Now, operation of a system including a machining machine, a loader, and a motion controller will be described. As shown in FIG. 1, the system performs loading, machining, and unloading in order. An external conductor determines an execution pace for the whole system, and each apparatus operates in an assigned time to satisfy the execution pace. For example, when the conductor gives a command to set the pace of the whole system to be 50%, each apparatus performs its own operation at a pace of 50%.
In the machining machine, when the program is to be executed so as to satisfy the execution time specified by the conductor, in the conventional art, the ratio between the pre-measured execution time of the program and the specified time is set to be an override value, and the moving speeds of the axes are changed. However, if an element such as an in-position check or time fixed acceleration and deceleration is present for which the execution time is independent of overriding, the program execution time and the specified time may deviate from each other in spite of a set override time.
Japanese Patent Application Laid-open No. 2007-234002 discloses that, when a single block is included in a program, the program is executed in a specified time. However, this technique is not applied to a program with a plurality of blocks.
If a machining time is extended, a loader advancing for unloading and the machining machine may interfere with each other. To prevent such interference, the override value is conventionally set to a greater value to make the execution time of the program slightly shorter than the specified time. This allows interference to be avoided, but needs faster movement or acceleration than execution in the specified time. As a result, much power needs to be consumed.